home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Technotools
/
Technotools (Chestnut CD-ROM)(1993).ISO
/
misc_pto
/
autil100
/
start.asi
< prev
next >
Wrap
Text File
|
1991-12-13
|
22KB
|
1,086 lines
start:
rem This version of START.COM is for the Some ASIC Utilities disk.
rem It requires approximately 65K RAM.
rem First, initialize the Esc key.
b$=chr$(27)
rem Next, initialize the Enter(Return) key and space bar.
c$=chr$(13)
e$=chr$(32)
rem Parameters will go here when they're ready.
rem If no parameters, begin from the beginning.
cls
print " Matt Roberts"
print " 3 Cedar St., # 8"
print " Montpelier, Vt 05602-3006"
print " (802)223-2553"
print
print
print
print " Some ASIC Utilities 1.00"
print
print
print "If you have trouble running the programs on this disk, and the"
print "documentation doesn't seem to help, you can call between 9AM and 9PM"
print "EST, and I'll try to help. Keep trying."
print
print
print "If you find the files on this disk useful, a donation of $5.00 would"
print "be greatly appreciated. Thanks."
print
print
print
print
print
print "Press any key to continue. ";
gosub continue:
options:
cls
print "Here are your options:"
print
print
print "F1- See a list of the files on this disk."
print
print "F2- Read the text file of your choice, on the screen."
print
print "F3- Print the text file of your choice."
print
print "F4- Shell to DOS."
print
print "F5- Change to 40-column width."
print
print "Esc- Quit and return to DOS."
print
print
print "Please press the key corresponding to your choice. ";
wait1:
gosub continue:
if a$=b$ then finish:
if extended=1 then readext:
goto wait1:
readext:
if a$=";" then seefiles:
if a$="<" then readfile:
if a$="=" then printdoc:
if a$=">" then shell:
if a$="?" then option40:
goto wait1:
rem Here is the routine for listing the files on this disk.
seefiles:
cls
print "Here are the files on this disk:"
print
print
print "BEEP.ASI- The ASIC code for BEEP.COM."
print
print "BEEP.COM- Makes your computer go beep."
print
print "BEEP.DOC- The documentation for BEEP.COM."
print
print "BLANKLIN.ASI- The ASIC code for BLANKLIN.COM."
print
print "BLANKLIN.COM- Makes blank lines in DOS 2.X batch files."
print
print "BLANKLIN.DOC- The documentation for BLANKLIN.COM."
print
print "CORRECT.ASI- The ASIC code for CORRECT.COM."
print
print "CORRECT.COM- Batch file utility; rewards correct answers."
print
print "CORRECT.DOC- The documentation for CORRECT.COM."
print
print
print "Press any key to continue. ";
gosub continue:
cls
print "LIST.COM- Excellent utility by Vern Buerg; lists files on the screen."
print
print "LIST.DOC- The documentation for LIST.COM."
print
print "LITTLEBP.ASI- The ASIC code for LITTLEBP.COM."
print
print "LITTLEBP.COM- Makes a short beep on your computer."
print
print "LITTLEBP.DOC- The documentation for LITTLEBP.COM."
print
print "SIREN.ASI- The ASIC code for SIREN.COM."
print
print "SIREN.COM- Makes a siren noise on your computer."
print
print "SIREN.DOC- The documentation for SIREN.COM."
print
print "SMILEDLY.ASI- The ASIC code for SMILEDLY.COM."
print
print "SMILEDLY.COM- Makes a smiley-face, and delays before returning to DOS."
print
print "SMILEDLY.DOC- The documentation for SMILEDLY.COM."
print
print
print "Press any key to continue. ";
gosub continue:
cls
print "SPLAT.ASI- The ASIC code for SPLAT.COM."
print
print "SPLAT.COM- Batch file utility; 'rewards' incorrect answers."
print
print "SPLAT.DOC- The documentation for SPLAT.COM."
print
print "START.ASI- The ASIC code for START.COM."
print
print "START.COM- The file you're using right now."
print
print
print "Press any key to return to the Main Options Menu. ";
gosub continue:
goto options:
rem Here is the routine for reading a text file.
readfile:
cls
print "To move ahead in the file(s) you are about to view, press PgDn."
print
print "To move back, press PgUp."
print
print "To exit the document, press Esc."
print
print
print "Press any key to see the menu of files. ";
gosub continue:
readmenu:
cls
print "Here are the files you can view:"
print
print
print "A- BEEP.ASI J- SIREN.ASI"
print
print "B- BEEP.DOC K- SIREN.DOC"
print
print "C- BLANKLIN.ASI L- SMILEDLY.ASI"
print
print "D- BLANKLIN.DOC M- SMILEDLY.DOC"
print
print "E- CORRECT.ASI N- SPLAT.ASI"
print
print "F- CORRECT.DOC O- SPLAT.DOC"
print
print "G- LIST.DOC P- START.ASI"
print
print "H- LITTLEBP.ASI"
print
print "I- LITTLEBP.DOC Esc- Return to the Main Options Menu."
print
print
print "Please press the key corresponding to your choice. ";
gosub continue:
if a$=b$ then options:
print a$;
if a$="a" then readbeea:
if a$="A" then readbeea:
if a$="b" then readbeed:
if a$="B" then readbeed:
if a$="c" then readblaa:
if a$="C" then readblaa:
if a$="d" then readblad:
if a$="D" then readblad:
if a$="e" then readcora:
if a$="E" then readcora:
if a$="f" then readcord:
if a$="F" then readcord:
if a$="g" then readlist:
if a$="G" then readlist:
if a$="h" then readlita:
if a$="H" then readlita:
if a$="i" then readlitd:
if a$="I" then readlitd:
if a$="j" then readsira:
if a$="J" then readsira:
if a$="k" then readsird:
if a$="K" then readsird:
if a$="l" then readsmia:
if a$="L" then readsmia:
if a$="m" then readsmid:
if a$="M" then readsmid:
if a$="n" then readspla:
if a$="N" then readspla:
if a$="o" then readspld:
if a$="O" then readspld:
if a$="p" then readstar:
if a$="P" then readstar:
goto readmenu:
readbeea:
call ("list.com"," beep.asi")
goto readmenu:
readbeed:
call ("list.com"," beep.doc")
goto readmenu:
readblaa:
call ("list.com"," blanklin.asi")
goto readmenu:
readblad:
call ("list.com"," blanklin.doc")
goto readmenu:
readcora:
call ("list.com"," correct.asi")
goto readmenu:
readcord:
call ("list.com"," correct.doc")
goto readmenu:
readlist:
call ("list.com"," list.doc")
goto readmenu:
readlita:
call ("list.com"," littlebp.asi")
goto readmenu:
readlitd:
call ("list.com"," littlebp.doc")
goto readmenu:
readsira:
call ("list.com"," siren.asi")
goto readmenu:
readsird:
call ("list.com"," siren.doc")
goto readmenu:
readsmia:
call ("list.com"," smiledly.asi")
goto readmenu:
readsmid:
call ("list.com"," smiledly.doc")
goto readmenu:
readspla:
call ("list.com"," splat.asi")
goto readmenu:
readspld:
call ("list.com"," splat.doc")
goto readmenu:
readstar:
call ("list.com"," start.asi")
goto readmenu:
rem Here is the routine for printing a file.
printdoc:
cls
print "Please ready your printer; press any key to see the menu of files. ";
gosub continue:
printmen:
cls
print "Here are the files you can print:"
print
print
print "A- BEEP.ASI J- SIREN.ASI"
print
print "B- BEEP.DOC K- SIREN.DOC"
print
print "C- BLANKLIN.ASI L- SMILEDLY.ASI"
print
print "D- BLANKLIN.DOC M- SMILEDLY.DOC"
print
print "E- CORRECT.ASI N- SPLAT.ASI"
print
print "F- CORRECT.DOC O- SPLAT.DOC"
print
print "G- LIST.DOC P- START.ASI"
print
print "H- LITTLEBP.ASI"
print
print "I- LITTLEBP.DOC Esc- Return to the Main Options Menu."
print
print
print "Please press the key corresponding to your choice. ";
gosub continue:
wait2:
if a$=b$ then options:
if a$="a" then printbea:
if a$="A" then printbea:
if a$="b" then printbed:
if a$="B" then printbed:
if a$="c" then printbla:
if a$="C" then printbla:
if a$="d" then printbld:
if a$="D" then printbld:
if a$="e" then printcoa:
if a$="E" then printcoa:
if a$="f" then printcod:
if a$="F" then printcod:
if a$="g" then printlis:
if a$="G" then printlis:
if a$="h" then printlia:
if a$="H" then printlia:
if a$="i" then printlid:
if a$="I" then printlid:
if a$="j" then printsia:
if a$="J" then printsia:
if a$="k" then printsid:
if a$="K" then printsid:
if a$="l" then printsma:
if a$="L" then printsma:
if a$="m" then printsmd:
if a$="M" then printsmd:
if a$="n" then printspa:
if a$="N" then printspa:
if a$="o" then printspd:
if a$="O" then printspd:
if a$="p" then printsta:
if a$="P" then printsta:
goto wait2:
printbea:
file$="beep.asi"
gosub printfil:
goto printmen:
printbed:
file$="beep.doc"
gosub printfil:
goto printmen:
printbla:
file$="blanklin.asi"
gosub printfil:
goto printmen:
printbld:
file$="blanklin.doc"
gosub printfil:
goto printmen:
printcoa:
file$="correct.asi"
gosub printfil:
goto printmen:
printcod:
file$="correct.doc"
gosub printfil:
goto printmen:
printlis:
file$="list.doc"
gosub printfil:
goto printmen:
printlia:
file$="littlebp.asi"
gosub printfil:
goto printmen:
printlid:
file$="littlebp.doc"
gosub printfil:
goto printmen:
printsia:
file$="siren.asi"
gosub printfil:
goto printmen:
printsid:
file$="siren.doc"
gosub printfil:
goto printmen:
printsma:
file$="smiledly.asi"
gosub printfil:
goto printmen:
printsmd:
file$="smiledly.doc"
gosub printfil:
goto printmen:
printspa:
file$="splat.asi"
gosub printfil:
goto printmen:
printspd:
file$="splat.doc"
gosub printfil:
goto printmen:
printsta:
file$="start.asi"
gosub printfil:
goto printmen:
rem Here is the file-printing subroutine.
printfil:
cls
f$=chr$(12)
open "i",1,file$
if error=2 then
print ""
print ""
print "File not found."
print
print
print "Press any key to continue. ";
gosub continue:
close 1
return
endif
heading:
cls
print "Printing...";
realfile$=ucase$(file$)
color 0,7
print realfile$
color 7,0
print
print
print "Press space bar to pause printing, or Esc to quit."
print
print
printmor:
input# 1, line$ crlf
if error=96 then
lprint line$
goto blanklin:
endif
contlprn:
lprint line$
a$=inkey$
if a$=b$ then
print "Printing has been terminated. The printer may still have data in its"
print "buffer. If so, it will continue printing until the buffer is empty."
print
lprint f$
close 1
file$=""
print "Press any key to continue. ";
gosub continue:
return
endif
if a$=e$ then pause: else nopause:
pause:
print "Press any key to resume printing. ";
pausemor:
a$=inkey$
if a$="" then pausemor:
a$=""
goto heading:
nopause:
if error=99 then eofp:
goto printmor:
blanklin:
input# 1, line$ crlf
if line$="" then printmor: else contlprn:
eofp:
lprint line$
print "Finished."
print
close 1
lprint f$
print "Press any key to continue. ";
gosub continue:
return
rem This is the end of the routine for printing text files.
rem Here is the routine for shelling to DOS.
shell:
cls
print "On which drive is your COMMAND.COM (don't type the colon)? ";
gosub continue:
path$=a$+":\command.com"
cls
print "Use the DOS command EXIT to return to START.COM."
print
call path$,""
goto options:
rem Here is the routine for START.COM in 40-column mode.
option40:
width 40
print "Here are your options:"
print
print
print "F1- See a list of disk files."
print
print "F2- Read the text file of your choice,"
print "on the screen."
print
print "F3- Print a text file."
print
print "F4- Shell to DOS."
print
print "F5- Return to 80-column mode."
print
print "Esc- Quit and return to DOS."
print
print
print "Please press the key corresponding to"
print "your choice. ";
wait3:
gosub continue:
if a$=b$ then finish:
if extended=1 then readex40:
goto wait3:
readex40:
if a$=";" then seefil40:
if a$="<" then rdfile40:
if a$="=" then prtdoc40:
if a$=">" then shell40:
if a$="?" then width80:
goto wait3:
rem Here is the routine for viewing disk files in 40-column mode.
seefil40:
width 40
print "Here are the files on this disk:"
print
print
print "BEEP.ASI- The ASIC code for BEEP.COM."
print
print "BEEP.COM- Makes your computer go beep."
print
print "BEEP.DOC- The documentation for"
print "BEEP.COM."
print
print "BLANKLIN.ASI- The ASIC code for"
print "BLANKLIN.COM."
print
print "BLANKLIN.COM- Makes blank lines in DOS"
print "2.X batch files."
print
print "BLANKLIN.DOC- The documentation for"
print "BLANKLIN.COM."
print
print "CORRECT.ASI- The ASIC code for"
print "CORRECT.COM."
print
print
print "Press any key to continue. ";
gosub continue:
cls
print "CORRECT.COM- Batch file utility to re-"
print "ward correct answers."
print
print "CORRECT.DOC- The documentation for"
print "CORRECT.COM."
print
print "LIST.COM- Excellent utility by Vern"
print "Buerg; prints files on the screen."
print
print "LIST.DOC- The documentation for"
print "LIST.COM."
print
print "LITTLEBP.ASI- The ASIC code for"
print "LITTLEBP.COM."
print
print "LITTLEBP.COM- Makes a short beep on"
print "your computer."
print
print "LITTLEBP.DOC- The documentation for"
print "LITTLEBP.COM."
print
print
print "Press any key to continue. ";
gosub continue:
cls
print "SIREN.ASI- The ASIC code for"
print "SIREN.COM."
print
print "SIREN.COM- Makes a siren noise."
print
print "SIREN.DOC- The documentation for"
print "SIREN.COM."
print
print "SMILEDLY.ASI- The ASIC code for"
print "SMILEDLY.COM."
print
print "SMILEDLY.COM- Makes a smiley-face, and"
print "delays before returning to DOS."
print
print "SMILEDLY.DOC- The documentation for"
print "SMILEDLY.COM."
print
print "SPLAT.ASI- The ASIC code for"
print "SPLAT.COM."
print
print
print "Press any key to continue. ";
gosub continue:
cls
print "SPLAT.COM- Batch file utility; rewards"
print "incorrect answers."
print
print "START.ASI- The ASIC code for"
print "START.COM."
print
print "START.COM- The file you're using right"
print "now."
print
print
print "Press any key to return to the Main"
print "Options Menu. ";
gosub continue:
goto option40:
rem Here is the routine for reading a text file in 40-column mode.
rdfile40:
width 40
print "To move ahead in the file(s) you are"
print "about to view, press PgDn."
print
print "To move back, press PgUp."
print
print "To move to the side, use the arrow"
print "keys."
print
print "To exit the document, press Esc."
print
print
print "Press any key to see the menu of"
print "files. ";
gosub continue:
rdmenu40:
cls
print "Here are the files you can view:"
print
print
print "A- BEEP.ASI J- SIREN.ASI"
print
print "B- BEEP.DOC K- SIREN.DOC"
print
print "C- BLANKLIN.ASI L- SMILEDLY.ASI"
print
print "D- BLANKLIN.DOC M- SMILEDLY.DOC"
print
print "E- CORRECT.ASI N- SPLAT.ASI"
print
print "F- CORRECT.DOC O- SPLAT.DOC"
print
print "G- LIST.DOC P- START.ASI"
print
print "H- LITTLEBP.ASI"
print
print "I- LITTLEBP.DOC Esc- Main Menu."
print
print
print "Please press the key corresponding to"
print "your choice. ";
gosub continue:
if a$=b$ then option40:
print a$;
if a$="a" then rdbeea40:
if a$="A" then rdbeea40:
if a$="b" then rdbeed40:
if a$="B" then rdbeed40:
if a$="c" then rdblaa40:
if a$="C" then rdblaa40:
if a$="d" then rdblad40:
if a$="D" then rdblad40:
if a$="e" then rdcora40:
if a$="E" then rdcora40:
if a$="f" then rdcord40:
if a$="F" then rdcord40:
if a$="g" then rdlist40:
if a$="G" then rdlist40:
if a$="h" then rdlita40:
if a$="H" then rdlita40:
if a$="i" then rdlitd40:
if a$="I" then rdlitd40:
if a$="j" then rdsira40:
if a$="J" then rdsira40:
if a$="k" then rdsird40:
if a$="K" then rdsird40:
if a$="l" then rdsmia40:
if a$="L" then rdsmia40:
if a$="m" then rdsmid40:
if a$="M" then rdsmid40:
if a$="n" then rdspla40:
if a$="N" then rdspla40:
if a$="o" then rdspld40:
if a$="O" then rdspld40:
if a$="p" then rdstar40:
if a$="P" then rdstar40:
goto rdmenu40:
rdbeea40:
call ("list.com"," beep.asi")
goto rdmenu40:
rdbeed40:
call ("list.com"," beep.doc")
goto rdmenu40:
rdblaa40:
call ("list.com"," blanklin.asi")
goto rdmenu40:
rdblad40:
call ("list.com"," blanklin.doc")
goto rdmenu40:
rdcora40:
call ("list.com"," correct.asi")
goto rdmenu40:
rdcord40:
call ("list.com"," correct.doc")
goto rdmenu40:
rdlist40:
call ("list.com"," list.doc")
goto rdmenu40:
rdlita40:
call ("list.com"," littlebp.asi")
goto rdmenu40:
rdlitd40:
call ("list.com"," littlebp.doc")
goto rdmenu40:
rdsira40:
call ("list.com"," siren.asi")
goto rdmenu40:
rdsird40:
call ("list.com"," siren.doc")
goto rdmenu40:
rdsmia40:
call ("list.com"," smiledly.asi")
goto rdmenu40:
rdsmid40:
call ("list.com"," smiledly.doc")
goto rdmenu40:
rdspla40:
call ("list.com"," splat.asi")
goto rdmenu40:
rdspld40:
call ("list.com"," splat.doc")
goto rdmenu40:
rdstar40:
call ("list.com"," start.asi")
goto rdmenu40:
rem Here is the routine for printing text files.
prtdoc40:
width 40
print "Please ready your printer; press any"
print "key to see the menu of files."
gosub continue:
prmenu40:
cls
print "Here are the files you can print:"
print
print
print "A- BEEP.ASI J- SIREN.ASI"
print
print "B- BEEP.DOC K- SIREN.DOC"
print
print "C- BLANKLIN.ASI L- SMILEDLY.ASI"
print
print "D- BLANKLIN.DOC M- SMILEDLY.DOC"
print
print "E- CORRECT.ASI N- SPLAT.ASI"
print
print "F- CORRECT.DOC O- SPLAT.DOC"
print
print "G- LIST.DOC P- START.ASI"
print
print "H- LITTLEBP.ASI"
print
print "I- LITTLEBP.DOC Esc- Main Menu."
print
print
print "Please press the key corresponding to"
print "your choice. ";
wait4:
gosub continue:
if a$=b$ then option40:
if a$="a" then prbeea40:
if a$="A" then prbeea40:
if a$="b" then prbeed40:
if a$="B" then prbeed40:
if a$="c" then prblaa40:
if a$="C" then prblaa40:
if a$="d" then prblad40:
if a$="D" then prblad40:
if a$="e" then prcora40:
if a$="E" then prcora40:
if a$="f" then prcord40:
if a$="F" then prcord40:
if a$="g" then prlist40:
if a$="G" then prlist40:
if a$="h" then prlita40:
if a$="H" then prlita40:
if a$="i" then prlitd40:
if a$="I" then prlitd40:
if a$="j" then prsira40:
if a$="J" then prsira40:
if a$="k" then prsird40:
if a$="K" then prsird40:
if a$="l" then prsmia40:
if a$="L" then prsmia40:
if a$="m" then prsmid40:
if a$="M" then prsmid40:
if a$="n" then prspla40:
if a$="N" then prspla40:
if a$="o" then prspld40:
if a$="O" then prspld40:
if a$="p" then prstar40:
if a$="P" then prstar40:
goto wait4:
prbeea40:
file$="beep.asi"
gosub prfile40:
goto prmenu40:
prbeed40:
file$="beep.doc"
gosub prfile40:
goto prmenu40:
prblaa40:
file$="blanklin.asi"
gosub prfile40:
goto prmenu40:
prblad40:
file$="blanklin.doc"
gosub prfile40:
goto prmenu40:
prcora40:
file$="correct.asi"
gosub prfile40:
goto prmenu40:
prcord40:
file$="correct.doc"
gosub prfile40:
goto prmenu40:
prlist40:
file$="list.doc"
gosub prfile40:
goto prmenu40:
prlita40:
file$="littlebp.asi"
gosub prfile40:
goto prmenu40:
prlitd40:
file$="littlebp.doc"
gosub prfile40:
goto prmenu40:
prsira40:
file$="siren.asi"
gosub prfile40:
goto prmenu40:
prsird40:
file$="siren.doc"
gosub prfile40:
goto prmenu40:
prsmia40:
file$="smiledly.asi"
gosub prfile40:
goto prmenu40:
prsmid40:
file$="smiledly.doc"
gosub prfile40:
goto prmenu40:
prspla40:
file$="splat.asi"
gosub prfile40:
goto prmenu40:
prspld40:
file$="splat.doc"
gosub prfile40:
goto prmenu40:
prstar40:
file$="start.asi"
gosub prfile40:
goto prmenu40:
rem Here is the routine for printing a file in 40-column mode.
prfile40:
cls
f$=chr$(12)
open "i",1,file$
if error=2 then
print ""
print ""
print "File not found."
print
print
print "Press any key to continue. ";
gosub continue:
close 1
return
endif
headng40:
cls
print "Printing...";
realfile$=ucase$(file$)
color 0,7
print realfile$
color 7,0
print
print
print "Press space bar to pause printing, or"
print "Esc to quit."
print
print
prntmr40:
input# 1, line$ crlf
if error=96 then
lprint line$
goto blnkln40:
endif
contpr40:
lprint line$
a$=inkey$
if a$=b$ then
print "Printing has been terminated. The"
print "printer may still have data in its"
print "buffer. If so, it will continue"
print "printing until the buffer is empty."
print
lprint f$
close 1
file$=""
print "Press any key to continue. ";
gosub continue:
return
endif
if a$=e$ then pause40: else nopaus40:
pause40:
print "Press any key to resume printing. ";
pausmr40:
a$=inkey$
if a$="" then pausmr40:
a$=""
goto headng40:
nopaus40:
if error=99 then eofp40:
goto prntmr40:
blnkln40:
input# 1, line$ crlf
if line$="" then prntmr40: else contpr40:
eofp40:
lprint line$
print "Finished."
print
close 1
lprint f$
print "Press any key to continue. ";
gosub continue:
return
rem This is the end of the routine for printing a file in 40-column mode.
rem Here is the routine for shelling to DOS in 40-column mode.
shell40:
width 40
print "On which drive is your COMMAND.COM?"
print "Don't type the colon. ";
gosub continue:
path$=a$+":\command.com"
cls
print "Use the DOS command EXIT to return to"
print "START.COM."
print
call path$,""
goto option40:
rem This is the end of the routine for shelling to DOS in 40-column mode.
rem Here is the routine for returning to 80-column width.
width80:
width 80
goto options:
rem This is the end of the routine for returning to 80-column mode.
rem Here is the routine for continuing when the user presses a key.
continue:
wait:
a$=inkey$
if a$="" then wait:
return
rem Here is the routine for ending the program and returning to DOS.
finish:
cls
end